/**
 * Copyright(c) by JNet Smartware Group.
 * All rights reserved. Not distribution or redistribution without
 * any permission of JNet Smartware Group.
 * 
 * @author thuc
 * 2010/07/31
 */
package vn.smartware.co.server.sql.factory;

import java.sql.Connection;

import vn.smartware.co.dto.MstDrinkDTO;
import vn.smartware.co.dto.MstPriceDTO;
import vn.smartware.co.forms.RegisterDrinkForm;
import vn.smartware.co.framework.bean.LoginDTO;
import vn.smartware.co.framework.db.factory.SQLManager;
import vn.smartware.co.framework.exception.ServerException;

/**
 * @author thuctt
 * AbstractRegisterDrinkSQLManager
 */
public abstract class AbstractRegisterDrinkSQLManager extends SQLManager {

	/**
	 * get drink list
	 * @param form 
	 * @param user 
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeGetDrinkListSQL(RegisterDrinkForm form, LoginDTO user,
			Connection conn) throws ServerException;


	/**
	 * makeGetUnitListSQL
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeGetUnitListSQL(LoginDTO user, Connection conn)
			throws ServerException;


	/**
	 * makeDeleteDrinkSQL
	 * @param drinkNo
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeDeleteDrinkSQL(String drinkNo, LoginDTO user,
			Connection conn) throws ServerException;

	/**
	 * makeRegisterDrinkSQL
	 * @param drink
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeRegisterDrinkSQL(MstDrinkDTO drink, LoginDTO user,
			Connection conn) throws ServerException;

	/**
	 * makeUpdateDrinkSQL
	 * @param drink
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeUpdateDrinkSQL(MstDrinkDTO drink, LoginDTO user,
			Connection conn) throws ServerException;

	/**
	 * getMaxDrinkNoSQL
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void getMaxDrinkNoSQL(Connection conn)
			throws ServerException;

	/**
	 * makeRegisterPriceSQL
	 * @param drinkNo
	 * @param price
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeRegisterPriceSQL(String drinkNo, MstPriceDTO price,
			LoginDTO user, Connection conn) throws ServerException;

	/**
	 * makeDeletePriceListSQL
	 * @param roomNo
	 * @param user
	 * @param conn
	 * @throws ServerException
	 */
	abstract public void makeDeletePriceListSQL(String roomNo, LoginDTO user,
			Connection conn) throws ServerException;

}
